/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package org.hl7.v3;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

import org.eclipse.emf.common.util.Enumerator;

/**
 * <!-- begin-user-doc -->
 * A representation of the literals of the enumeration '<em><b>Race American Indian Northwest Tribes</b></em>',
 * and utility methods for working with them.
 * <!-- end-user-doc -->
 * <!-- begin-model-doc -->
 * specDomain: S15200 (C-0-T14914-S14915-S14916-S15200-cpt)
 * <!-- end-model-doc -->
 * @see org.hl7.v3.V3Package#getRaceAmericanIndianNorthwestTribes()
 * @model extendedMetaData="name='RaceAmericanIndianNorthwestTribes'"
 * @generated
 */
public enum RaceAmericanIndianNorthwestTribes implements Enumerator {
	/**
	 * The '<em><b>13912</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_13912_VALUE
	 * @generated
	 * @ordered
	 */
	_13912(0, "_13912", "1391-2"),

	/**
	 * The '<em><b>13920</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_13920_VALUE
	 * @generated
	 * @ordered
	 */
	_13920(1, "_13920", "1392-0"),

	/**
	 * The '<em><b>13938</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_13938_VALUE
	 * @generated
	 * @ordered
	 */
	_13938(2, "_13938", "1393-8"),

	/**
	 * The '<em><b>13946</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_13946_VALUE
	 * @generated
	 * @ordered
	 */
	_13946(3, "_13946", "1394-6"),

	/**
	 * The '<em><b>13953</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_13953_VALUE
	 * @generated
	 * @ordered
	 */
	_13953(4, "_13953", "1395-3"),

	/**
	 * The '<em><b>13961</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_13961_VALUE
	 * @generated
	 * @ordered
	 */
	_13961(5, "_13961", "1396-1"),

	/**
	 * The '<em><b>13979</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_13979_VALUE
	 * @generated
	 * @ordered
	 */
	_13979(6, "_13979", "1397-9"),

	/**
	 * The '<em><b>13987</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_13987_VALUE
	 * @generated
	 * @ordered
	 */
	_13987(7, "_13987", "1398-7"),

	/**
	 * The '<em><b>13995</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_13995_VALUE
	 * @generated
	 * @ordered
	 */
	_13995(8, "_13995", "1399-5"),

	/**
	 * The '<em><b>14001</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_14001_VALUE
	 * @generated
	 * @ordered
	 */
	_14001(9, "_14001", "1400-1"),

	/**
	 * The '<em><b>14019</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_14019_VALUE
	 * @generated
	 * @ordered
	 */
	_14019(10, "_14019", "1401-9");

	/**
	 * The '<em><b>13912</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>13912</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_13912
	 * @model literal="1391-2"
	 * @generated
	 * @ordered
	 */
	public static final int _13912_VALUE = 0;

	/**
	 * The '<em><b>13920</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>13920</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_13920
	 * @model literal="1392-0"
	 * @generated
	 * @ordered
	 */
	public static final int _13920_VALUE = 1;

	/**
	 * The '<em><b>13938</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>13938</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_13938
	 * @model literal="1393-8"
	 * @generated
	 * @ordered
	 */
	public static final int _13938_VALUE = 2;

	/**
	 * The '<em><b>13946</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>13946</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_13946
	 * @model literal="1394-6"
	 * @generated
	 * @ordered
	 */
	public static final int _13946_VALUE = 3;

	/**
	 * The '<em><b>13953</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>13953</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_13953
	 * @model literal="1395-3"
	 * @generated
	 * @ordered
	 */
	public static final int _13953_VALUE = 4;

	/**
	 * The '<em><b>13961</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>13961</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_13961
	 * @model literal="1396-1"
	 * @generated
	 * @ordered
	 */
	public static final int _13961_VALUE = 5;

	/**
	 * The '<em><b>13979</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>13979</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_13979
	 * @model literal="1397-9"
	 * @generated
	 * @ordered
	 */
	public static final int _13979_VALUE = 6;

	/**
	 * The '<em><b>13987</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>13987</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_13987
	 * @model literal="1398-7"
	 * @generated
	 * @ordered
	 */
	public static final int _13987_VALUE = 7;

	/**
	 * The '<em><b>13995</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>13995</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_13995
	 * @model literal="1399-5"
	 * @generated
	 * @ordered
	 */
	public static final int _13995_VALUE = 8;

	/**
	 * The '<em><b>14001</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>14001</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_14001
	 * @model literal="1400-1"
	 * @generated
	 * @ordered
	 */
	public static final int _14001_VALUE = 9;

	/**
	 * The '<em><b>14019</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>14019</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_14019
	 * @model literal="1401-9"
	 * @generated
	 * @ordered
	 */
	public static final int _14019_VALUE = 10;

	/**
	 * An array of all the '<em><b>Race American Indian Northwest Tribes</b></em>' enumerators.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private static final RaceAmericanIndianNorthwestTribes[] VALUES_ARRAY =
		new RaceAmericanIndianNorthwestTribes[] {
			_13912,
			_13920,
			_13938,
			_13946,
			_13953,
			_13961,
			_13979,
			_13987,
			_13995,
			_14001,
			_14019,
		};

	/**
	 * A public read-only list of all the '<em><b>Race American Indian Northwest Tribes</b></em>' enumerators.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static final List<RaceAmericanIndianNorthwestTribes> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));

	/**
	 * Returns the '<em><b>Race American Indian Northwest Tribes</b></em>' literal with the specified literal value.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RaceAmericanIndianNorthwestTribes get(String literal) {
		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
			RaceAmericanIndianNorthwestTribes result = VALUES_ARRAY[i];
			if (result.toString().equals(literal)) {
				return result;
			}
		}
		return null;
	}

	/**
	 * Returns the '<em><b>Race American Indian Northwest Tribes</b></em>' literal with the specified name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RaceAmericanIndianNorthwestTribes getByName(String name) {
		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
			RaceAmericanIndianNorthwestTribes result = VALUES_ARRAY[i];
			if (result.getName().equals(name)) {
				return result;
			}
		}
		return null;
	}

	/**
	 * Returns the '<em><b>Race American Indian Northwest Tribes</b></em>' literal with the specified integer value.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RaceAmericanIndianNorthwestTribes get(int value) {
		switch (value) {
			case _13912_VALUE: return _13912;
			case _13920_VALUE: return _13920;
			case _13938_VALUE: return _13938;
			case _13946_VALUE: return _13946;
			case _13953_VALUE: return _13953;
			case _13961_VALUE: return _13961;
			case _13979_VALUE: return _13979;
			case _13987_VALUE: return _13987;
			case _13995_VALUE: return _13995;
			case _14001_VALUE: return _14001;
			case _14019_VALUE: return _14019;
		}
		return null;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final int value;

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final String name;

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final String literal;

	/**
	 * Only this class can construct instances.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private RaceAmericanIndianNorthwestTribes(int value, String name, String literal) {
		this.value = value;
		this.name = name;
		this.literal = literal;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public int getValue() {
	  return value;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public String getName() {
	  return name;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public String getLiteral() {
	  return literal;
	}

	/**
	 * Returns the literal value of the enumerator, which is its string representation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public String toString() {
		return literal;
	}
	
} //RaceAmericanIndianNorthwestTribes
